Replace Task: ফাইলের মধ্যে টেক্সট পরিবর্তন করা

Java Technologies - অ্যাপাচি অ্যান্ট টাস্কস (Apache ANT Tasks) Advanced Built-in Tasks |
131
131

Apache Ant-এ <replace> টাস্কটি একটি ফাইলের মধ্যে নির্দিষ্ট টেক্সট বা স্ট্রিং পরিবর্তন করার জন্য ব্যবহৃত হয়। এটি সাধারণত text replacement (টেক্সট প্রতিস্থাপন) এর জন্য ব্যবহৃত হয়, যেমন কনফিগারেশন ফাইলের মধ্যে কিছু মান পরিবর্তন করা বা সোর্স কোডের মধ্যে নির্দিষ্ট স্ট্রিং পরিবর্তন করা।

Replace Task এর Syntax

<replace file="file_path" token="old_text" value="new_text"/>
  • file: যেখানে আপনি টেক্সট প্রতিস্থাপন করতে চান এমন ফাইলের পাথ।
  • token: পুরানো টেক্সট বা স্ট্রিং যা আপনি পরিবর্তন করতে চান।
  • value: নতুন টেক্সট বা স্ট্রিং যা পুরানো টেক্সটের জায়গায় বসবে।

১. Basic Example: Replacing Text in a File

এটি একটি সহজ উদাহরণ যেখানে একটি ফাইলে old_text কে new_text দিয়ে প্রতিস্থাপন করা হচ্ছে।

Step 1: Create a sample text file sample.txt

This is an old file.
We need to replace the old text with new text.

Step 2: Ant build script to replace text

<project name="ReplaceTextExample" default="replaceText" basedir=".">
    
    <target name="replaceText">
        <!-- Replacing text in the file -->
        <replace file="sample.txt" token="old" value="new"/>
    </target>

</project>

এখানে:

  • : এটি sample.txt ফাইলের মধ্যে old শব্দটি new দিয়ে প্রতিস্থাপন করবে।

আউটপুট:

ফাইলের মধ্যে old শব্দটি new দিয়ে পরিবর্তিত হবে। নতুন sample.txt ফাইলটি এমন দেখাবে:

This is an new file.
We need to replace the new text with new text.

২. Replacing Multiple Tokens

একাধিক টোকেন বা স্ট্রিং একসাথে প্রতিস্থাপন করতে আপনি <replace> টাস্কে একাধিক টোকেন নির্ধারণ করতে পারেন।

<project name="ReplaceMultipleTextExample" default="replaceMultipleText" basedir=".">
    
    <target name="replaceMultipleText">
        <!-- Replacing multiple tokens in the file -->
        <replace file="sample.txt" token="old" value="new"/>
        <replace file="sample.txt" token="file" value="document"/>
    </target>

</project>

এখানে:

  • : old শব্দটি new দিয়ে প্রতিস্থাপন করবে।
  • : file শব্দটি document দিয়ে প্রতিস্থাপন করবে।

আউটপুট:

নতুন sample.txt ফাইলটি এমন দেখাবে:

This is an new document.
We need to replace the new text with new text.

৩. Using Regular Expressions in Replace

<replace> টাস্কে আপনি regular expressions ব্যবহার করতে পারেন, যার মাধ্যমে আরও জটিল টেক্সট পরিবর্তন করা সম্ভব।

<project name="ReplaceRegexExample" default="replaceRegex" basedir=".">
    
    <target name="replaceRegex">
        <!-- Replacing text using regular expression -->
        <replace file="sample.txt" token="old\sfile" value="new document" />
    </target>

</project>

এখানে:

  • token="old\sfile": এখানে \s ব্যবহার করা হয়েছে যা space (স্পেস) কে চিহ্নিত করে, এবং old file এর জায়গায় new document বসানো হবে।

আউটপুট:

ফাইলের মধ্যে old file শব্দটি new document দিয়ে প্রতিস্থাপিত হবে।

This is an new document.
We need to replace the new text with new text.

৪. Backing Up the File Before Replace

আপনি যদি ফাইলটি পরিবর্তন করার আগে তার একটি ব্যাকআপ রাখতে চান, তবে <replace> টাস্কে backup অ্যাট্রিবিউট ব্যবহার করতে পারেন।

<project name="ReplaceWithBackupExample" default="replaceWithBackup" basedir=".">
    
    <target name="replaceWithBackup">
        <!-- Replacing text with backup -->
        <replace file="sample.txt" token="old" value="new" backup="true"/>
    </target>

</project>

এখানে:

  • backup="true": এটি ফাইলটির একটি ব্যাকআপ তৈরি করবে এবং মূল ফাইলের পরিবর্তন হবে।

আউটপুট:

যখন আপনি replaceWithBackup টাস্কটি রান করবেন, sample.txt ফাইলটির একটি ব্যাকআপ তৈরি হবে, যা sample.txt~ নামে সংরক্ষণ হবে।


৫. Replacing Text in Multiple Files (Using Fileset)

আপনি fileset টাস্ক ব্যবহার করে একাধিক ফাইলে টেক্সট পরিবর্তন করতে পারেন।

<project name="ReplaceInMultipleFilesExample" default="replaceInMultipleFiles" basedir=".">
    
    <target name="replaceInMultipleFiles">
        <replace>
            <fileset dir="src" includes="*.txt"/>
            <token value="old"/>
            <value value="new"/>
        </replace>
    </target>

</project>

এখানে:

  • : এটি src ডিরেক্টরির সব .txt ফাইলকে টার্গেট করবে।
  • : old শব্দটি new দিয়ে প্রতিস্থাপন হবে।

আউটপুট:

যে সমস্ত .txt ফাইল src ডিরেক্টরিতে রয়েছে, সেগুলির মধ্যে old শব্দটি new দিয়ে প্রতিস্থাপন করা হবে।


৬. Handling File Encoding with Replace

<replace> টাস্কে আপনি encoding অ্যাট্রিবিউট ব্যবহার করে ফাইলের ইনকোডিং নির্ধারণ করতে পারেন।

<project name="ReplaceWithEncodingExample" default="replaceWithEncoding" basedir=".">
    
    <target name="replaceWithEncoding">
        <!-- Replacing text with encoding -->
        <replace file="sample.txt" token="old" value="new" encoding="UTF-8"/>
    </target>

</project>

এখানে:

  • encoding="UTF-8": এটি UTF-8 এনকোডিং ব্যবহার করে ফাইলটি পরিবর্তন করবে।

আউটপুট:

ফাইলটি UTF-8 এনকোডিংয়ে পরিবর্তিত হবে, এবং old শব্দটি new দিয়ে প্রতিস্থাপিত হবে।


সারাংশ

<replace> টাস্কটি Apache Ant-এ একটি অত্যন্ত উপকারী টাস্ক যা ফাইলের মধ্যে টেক্সট পরিবর্তন করার জন্য ব্যবহৃত হয়। এটি ব্যবহার করে আপনি:

  • এক বা একাধিক টোকেন বা স্ট্রিং প্রতিস্থাপন করতে পারেন।
  • Regular Expressions ব্যবহার করে আরও জটিল টেক্সট পরিবর্তন করতে পারেন।
  • ফাইলের মধ্যে পরিবর্তনের আগে ব্যাকআপ তৈরি করতে পারেন।
  • একাধিক ফাইলে টেক্সট পরিবর্তন করতে fileset ব্যবহার করতে পারেন।
  • টেক্সট পরিবর্তন করার সময় ফাইল এনকোডিং নির্ধারণ করতে পারেন।

এটি একটি খুবই উপকারী টাস্ক যখন আপনি কোড বা কনফিগারেশন ফাইলগুলিতে টেক্সট পরিবর্তন করার কাজ অটোমেট করতে চান।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion